package com.kirk.cts.core.base.pagination.util;

import java.sql.Connection;

/**
 * <p> DbPool.java </p>
 *
 * @version 1.0.0
 * @Author kirkliu
 * @Date 2020-08-31 23:10
 * @Description 连接池
 */
public interface DbPool {
    /**
     * 将不再使用的连接返回给连接池
     */
    void freeConnection(Connection con);

    /**
     * 从连接池获得一个可用连接.如没有空闲的连接且当前连接数小于最大连接 数限制,则创建新连接.如原来登记为可用的连接不再有效,则从向量删除之,
     */
    Connection getConnection();

    /**
     * 关闭所有连接
     */
    void release();

    /**
     * 从连接池获取可用连接.可以指定客户程序能够等待的最长时间 参见前一个getConnection()方法.
     */
    Connection getConnection(long timeout);
}
